/* Soubor je ulozen v kodovani UTF-8.
 * Kontrola kódování: Příliš žluťoučký kůň úpěl ďábelské ódy.
 */
package cz.vse.po1715.piskorky.umela_inteligence;

import java.awt.Point;



/*******************************************************************************
 * Instance rozhraní {@code IAI} představují umělou inteligenci 
 * pro hru Piškvorky. Vrátí tah počítače.
 *
 * @author    Vladimír Forejt
 * @version   2.0
 */
public interface IUI
{
//== VEŘEJNÉ KONSTANTY =========================================================
//== DEKLAROVANÉ METODY ========================================================

    /***************************************************************************
     * Metoda @začniHru() vrací souřadnice prvního tahu počítače. Je možné ji volat pouze 
     *      v případě, že počítač začíná hru - vrací tedy souřadnice úplně
     *      prvního tahu na prázdné hrací pole.
     * 
     * @return souřadnice políčka
     */
//    @Override
    public Point začniHru();
    
    /***************************************************************************
     * Metoda vrací souřadnice pole, na které počítač umístil svůj znak
     * 
     * @param tahHráče - souřadnice políčka, na které táhl hráč. Na tento tah
     *                  pak počítač vrací souřadnice svého tahu.
     *          souřadnice 1,1 - první řádek první políčko
     *          souřadnice 2,3 - druhý řádek odshora, třetí políčko
     * 
     * @return souřadnice políčka, na které táhne počítač (x: řádek, y: sloupec)
     */
//    @Override
    public Point hraj(Point tahHráče);

    /***************************************************************************
     * Metoda @napověz() slouží jako nápověda - vrací souřadnice políčka, které počítač
     *      zvolí jako nejvýhodnější pro hráče
     *      * 
     * @return souřadnice políčka
     */
//    @Override
    public Point napověz();

//== INTERNÍ DATOVÉ TYPY =======================================================
}